[INFO] fetching crate slog 2.8.2...
[INFO] fixing slog-2.8.2 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] extracting crate slog 2.8.2 into /workspace/builds/worker-0-tc2/source
[INFO] removed /workspace/builds/worker-0-tc2/source/.cargo/config.toml
[INFO] started tweaking crates.io crate slog 2.8.2
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate slog 2.8.2
[INFO] tweaked toml for crates.io crate slog 2.8.2 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate slog 2.8.2 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate slog 2.8.2 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 5eae1e11f5b41f632236fc530204478f8be8b6cb295963154e2f7c9bd9b7f5fc
[INFO] running `Command { std: "docker" "start" "5eae1e11f5b41f632236fc530204478f8be8b6cb295963154e2f7c9bd9b7f5fc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5eae1e11f5b41f632236fc530204478f8be8b6cb295963154e2f7c9bd9b7f5fc" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5eae1e11f5b41f632236fc530204478f8be8b6cb295963154e2f7c9bd9b7f5fc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5eae1e11f5b41f632236fc530204478f8be8b6cb295963154e2f7c9bd9b7f5fc" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2018 edition to 2021
[INFO] [stderr] note: Switching to Edition 2021 will enable the use of the version 2 feature resolver in Cargo.
[INFO] [stderr] This may cause some dependencies to be built with fewer features enabled than previously.
[INFO] [stderr] More information about the resolver changes may be found at https://doc.rust-lang.org/nightly/edition-guide/rust-2021/default-cargo-resolver.html
[INFO] [stderr] When building the following dependencies, the given features will no longer be used:
[INFO] [stderr] 
[INFO] [stderr]   serde v1.0.220 removed features: default, std
[INFO] [stderr] 
[INFO] [stderr]    Compiling serde_core v1.0.220
[INFO] [stderr]    Compiling rustversion v1.0.6
[INFO] [stderr]    Compiling proc-macro2 v1.0.83
[INFO] [stderr]    Compiling unicode-ident v1.0.0
[INFO] [stderr]    Compiling serde v1.0.220
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling slog v2.8.2 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating build.rs from 2018 edition to 2021
[INFO] [stderr]    Compiling syn v2.0.81
[INFO] [stderr]    Compiling serde_derive v1.0.220
[INFO] [stderr]     Checking erased-serde v0.3.31
[INFO] [stderr]    Migrating src/lib.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/struct-log-self.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating tests/prelude_conflicts.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/named.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating tests/issue364.rs from 2018 edition to 2021
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.87s
[INFO] [stderr] crater-edition-check: slog v2.8.2 (/opt/rustwide/workdir) updating edition from 2018 to 2021
[INFO] [stderr]    Compiling slog v2.8.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.70s
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2018 edition to 2021
[INFO] [stderr] note: Switching to Edition 2021 will enable the use of the version 2 feature resolver in Cargo.
[INFO] [stderr] This may cause some dependencies to be built with fewer features enabled than previously.
[INFO] [stderr] More information about the resolver changes may be found at https://doc.rust-lang.org/nightly/edition-guide/rust-2021/default-cargo-resolver.html
[INFO] [stderr] When building the following dependencies, the given features will no longer be used:
[INFO] [stderr] 
[INFO] [stderr]   serde v1.0.220 removed features: default, std
[INFO] [stderr] 
[INFO] [stderr]     Checking slog v2.8.2 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed src/tests.rs (2 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:127:9
[INFO] [stdout]     |
[INFO] [stdout] 127 |         info!(log, "(b2, b1, a)");
[INFO] [stdout]     |         ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed src/lib.rs (137 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:130:9
[INFO] [stdout]     |
[INFO] [stdout] 130 |         info!(log, "(c, b2, b1, a)");
[INFO] [stdout]     |         ---------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:132:9
[INFO] [stdout]     |
[INFO] [stdout] 132 |         info!(log, "(d2, d1, c, b2, b1, a)");
[INFO] [stdout]     |         ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         info!(logger, "foo"; "error" => #error);
[INFO] [stdout]     |         --------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         info!(logger, "foo"; "error" => #error);
[INFO] [stdout]     |         --------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:148:9
[INFO] [stdout]     |
[INFO] [stdout] 148 |         info!(logger, "foo"; "error" => #&error);
[INFO] [stdout]     |         ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:148:9
[INFO] [stdout]     |
[INFO] [stdout] 148 |         info!(logger, "foo"; "error" => #&error);
[INFO] [stdout]     |         ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |         info!(logger, "foo"; "error" => #&error);
[INFO] [stdout]     |         ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |         info!(logger, "foo"; "error" => #&error);
[INFO] [stdout]     |         ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:163:9
[INFO] [stdout]     |
[INFO] [stdout] 163 |         info!(logger, "foo");
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:164:9
[INFO] [stdout]     |
[INFO] [stdout] 164 |         crate::info!(logger, "foo");
[INFO] [stdout]     |         --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 172 |         info!(logger, "foo"; "error" => #error);
[INFO] [stdout]     |         --------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 172 |         info!(logger, "foo"; "error" => #error);
[INFO] [stdout]     |         --------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 173 |         crate::info!(logger, "foo"; "error" => #error);
[INFO] [stdout]     |         ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 173 |         crate::info!(logger, "foo"; "error" => #error);
[INFO] [stdout]     |         ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:182:9
[INFO] [stdout]     |
[INFO] [stdout] 182 |         info!(logger, "not-error: not-error; foo");
[INFO] [stdout]     |         ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 183 |         crate::info!(logger, "not-error: not-error; foo");
[INFO] [stdout]     |         ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 191 |         info!(logger, "not-error: not-error; foo"; "error" => #error, "not-error" => "not-error");
[INFO] [stdout]     |         ----------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 191 |         info!(logger, "not-error: not-error; foo"; "error" => #error, "not-error" => "not-error");
[INFO] [stdout]     |         ----------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:192:9
[INFO] [stdout]     |
[INFO] [stdout] 192 |         crate::info!(logger, "not-error: not-error; foo"; "error" => #error, "not-error" => "not-error");
[INFO] [stdout]     |         ------------------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:192:9
[INFO] [stdout]     |
[INFO] [stdout] 192 |         crate::info!(logger, "not-error: not-error; foo"; "error" => #error, "not-error" => "not-error");
[INFO] [stdout]     |         ------------------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:201:9
[INFO] [stdout]     |
[INFO] [stdout] 201 |         info!(logger, "foonot-error: not-error; ");
[INFO] [stdout]     |         ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:202:9
[INFO] [stdout]     |
[INFO] [stdout] 202 |         crate::info!(logger, "foonot-error: not-error; ");
[INFO] [stdout]     |         ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:210:9
[INFO] [stdout]     |
[INFO] [stdout] 210 |         info!(logger, "foonot-error: not-error; "; "not-error" => "not-error", "error" => #error);
[INFO] [stdout]     |         ----------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:210:9
[INFO] [stdout]     |
[INFO] [stdout] 210 |         info!(logger, "foonot-error: not-error; "; "not-error" => "not-error", "error" => #error);
[INFO] [stdout]     |         ----------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 211 |         crate::info!(logger, "foonot-error: not-error; "; "not-error" => "not-error", "error" => #error);
[INFO] [stdout]     |         ------------------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 211 |         crate::info!(logger, "foonot-error: not-error; "; "not-error" => "not-error", "error" => #error);
[INFO] [stdout]     |         ------------------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 220 |         info!(logger, "foo: bar");
[INFO] [stdout]     |         ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:221:9
[INFO] [stdout]     |
[INFO] [stdout] 221 |         crate::info!(logger, "foo: bar");
[INFO] [stdout]     |         -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:229:9
[INFO] [stdout]     |
[INFO] [stdout] 229 |         info!(logger, "foo: bar"; "error" => #error);
[INFO] [stdout]     |         -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:229:9
[INFO] [stdout]     |
[INFO] [stdout] 229 |         info!(logger, "foo: bar"; "error" => #error);
[INFO] [stdout]     |         -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 |         crate::info!(logger, "foo: bar"; "error" => #error);
[INFO] [stdout]     |         --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 |         crate::info!(logger, "foo: bar"; "error" => #error);
[INFO] [stdout]     |         --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:239:9
[INFO] [stdout]     |
[INFO] [stdout] 239 |         info!(logger, "foo: bar: baz");
[INFO] [stdout]     |         ------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:240:9
[INFO] [stdout]     |
[INFO] [stdout] 240 |         crate::info!(logger, "foo: bar: baz");
[INFO] [stdout]     |         ------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 |         info!(logger, "foo: bar: baz"; "error" => #error);
[INFO] [stdout]     |         ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 |         info!(logger, "foo: bar: baz"; "error" => #error);
[INFO] [stdout]     |         ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:252:9
[INFO] [stdout]     |
[INFO] [stdout] 252 |         crate::info!(logger, "foo: bar: baz"; "error" => #error);
[INFO] [stdout]     |         -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:252:9
[INFO] [stdout]     |
[INFO] [stdout] 252 |         crate::info!(logger, "foo: bar: baz"; "error" => #error);
[INFO] [stdout]     |         -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:258:9
[INFO] [stdout]     |
[INFO] [stdout] 258 |         info!(logger, "not found"; "error" => std::io::Error::from(std::io::ErrorKind::NotFound));
[INFO] [stdout]     |         ----------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:258:9
[INFO] [stdout]     |
[INFO] [stdout] 258 |         info!(logger, "not found"; "error" => std::io::Error::from(std::io::ErrorKind::NotFound));
[INFO] [stdout]     |         ----------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:260:9
[INFO] [stdout]     |
[INFO] [stdout] 260 |         info!(logger, "not found"; "error" => #std::io::Error::from(std::io::ErrorKind::NotFound));
[INFO] [stdout]     |         ------------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:260:9
[INFO] [stdout]     |
[INFO] [stdout] 260 |         info!(logger, "not found"; "error" => #std::io::Error::from(std::io::ErrorKind::NotFound));
[INFO] [stdout]     |         ------------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:262:9
[INFO] [stdout]     |
[INFO] [stdout] 262 |         info!(logger, "not found"; "error" => #&error);
[INFO] [stdout]     |         ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:262:9
[INFO] [stdout]     |
[INFO] [stdout] 262 |         info!(logger, "not found"; "error" => #&error);
[INFO] [stdout]     |         ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:289:5
[INFO] [stdout]     |
[INFO] [stdout] 289 |     warn!(log, "logging message");
[INFO] [stdout]     |     ----------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:290:5
[INFO] [stdout]     |
[INFO] [stdout] 290 |     crate::warn!(log, "logging message");
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:292:5
[INFO] [stdout]     |
[INFO] [stdout] 292 |     info!(log, # "with tag", "logging message");
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:293:5
[INFO] [stdout]     |
[INFO] [stdout] 293 |     crate::info!(log, # "with tag", "logging message");
[INFO] [stdout]     |     -------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:295:5
[INFO] [stdout]     |
[INFO] [stdout] 295 |     warn!(log, "logging message"; "a" => "b");
[INFO] [stdout]     |     ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:295:5
[INFO] [stdout]     |
[INFO] [stdout] 295 |     warn!(log, "logging message"; "a" => "b");
[INFO] [stdout]     |     ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:296:5
[INFO] [stdout]     |
[INFO] [stdout] 296 |     crate::warn!(log, "logging message"; "a" => "b");
[INFO] [stdout]     |     ------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:296:5
[INFO] [stdout]     |
[INFO] [stdout] 296 |     crate::warn!(log, "logging message"; "a" => "b");
[INFO] [stdout]     |     ------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:298:5
[INFO] [stdout]     |
[INFO] [stdout] 298 |     warn!(log, "logging message bar={}", r.foo.bar());
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:299:5
[INFO] [stdout]     |
[INFO] [stdout] 299 |     crate::warn!(log, "logging message bar={}", r.foo.bar());
[INFO] [stdout]     |     -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                  |                    |
[INFO] [stdout]     |                                  |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                  borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:301:5
[INFO] [stdout]     |
[INFO] [stdout] 301 | /     warn!(
[INFO] [stdout] 302 | |         log,
[INFO] [stdout] 303 | |         "logging message bar={} foo={}",
[INFO] [stdout] 304 | |         r.foo.bar(),
[INFO] [stdout] 305 | |         r.foo.bar()
[INFO] [stdout] 306 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                  |                    |
[INFO] [stdout]     |                                  |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                  borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:307:5
[INFO] [stdout]     |
[INFO] [stdout] 307 | /     crate::warn!(
[INFO] [stdout] 308 | |         log,
[INFO] [stdout] 309 | |         "logging message bar={} foo={}",
[INFO] [stdout] 310 | |         r.foo.bar(),
[INFO] [stdout] 311 | |         r.foo.bar()
[INFO] [stdout] 312 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                  |                    |
[INFO] [stdout]     |                                  |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                  borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:315:5
[INFO] [stdout]     |
[INFO] [stdout] 315 | /     warn!(
[INFO] [stdout] 316 | |         log,
[INFO] [stdout] 317 | |         "logging message bar={} foo={}",
[INFO] [stdout] 318 | |         r.foo.bar(),
[INFO] [stdout] 319 | |         r.foo.bar(),
[INFO] [stdout] 320 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                  |                    |
[INFO] [stdout]     |                                  |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                  borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:321:5
[INFO] [stdout]     |
[INFO] [stdout] 321 | /     crate::warn!(
[INFO] [stdout] 322 | |         log,
[INFO] [stdout] 323 | |         "logging message bar={} foo={}",
[INFO] [stdout] 324 | |         r.foo.bar(),
[INFO] [stdout] 325 | |         r.foo.bar(),
[INFO] [stdout] 326 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:328:5
[INFO] [stdout]     |
[INFO] [stdout] 328 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1);
[INFO] [stdout]     |     ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:328:5
[INFO] [stdout]     |
[INFO] [stdout] 328 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1);
[INFO] [stdout]     |     ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:329:5
[INFO] [stdout]     |
[INFO] [stdout] 329 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1);
[INFO] [stdout]     |     ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:329:5
[INFO] [stdout]     |
[INFO] [stdout] 329 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1);
[INFO] [stdout]     |     ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:332:5
[INFO] [stdout]     |
[INFO] [stdout] 332 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1,);
[INFO] [stdout]     |     ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:332:5
[INFO] [stdout]     |
[INFO] [stdout] 332 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1,);
[INFO] [stdout]     |     ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:333:5
[INFO] [stdout]     |
[INFO] [stdout] 333 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1,);
[INFO] [stdout]     |     ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:333:5
[INFO] [stdout]     |
[INFO] [stdout] 333 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1,);
[INFO] [stdout]     |     ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |           $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:335:5
[INFO] [stdout]     |
[INFO] [stdout] 335 | /     warn!(log,
[INFO] [stdout] 336 | |           "logging message bar={}", r.foo.bar(); "x" => 1, "y" => r.foo.bar());
[INFO] [stdout]     | |______________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                  |                    |
[INFO] [stdout]     |                                  |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                  borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:335:5
[INFO] [stdout]     |
[INFO] [stdout] 335 | /     warn!(log,
[INFO] [stdout] 336 | |           "logging message bar={}", r.foo.bar(); "x" => 1, "y" => r.foo.bar());
[INFO] [stdout]     | |______________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |           $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:337:5
[INFO] [stdout]     |
[INFO] [stdout] 337 | /     crate::warn!(log,
[INFO] [stdout] 338 | |                "logging message bar={}", r.foo.bar();
[INFO] [stdout] 339 | |                "x" => 1, "y" => r.foo.bar());
[INFO] [stdout]     | |____________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                  |                    |
[INFO] [stdout]     |                                  |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                  borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:337:5
[INFO] [stdout]     |
[INFO] [stdout] 337 | /     crate::warn!(log,
[INFO] [stdout] 338 | |                "logging message bar={}", r.foo.bar();
[INFO] [stdout] 339 | |                "x" => 1, "y" => r.foo.bar());
[INFO] [stdout]     | |____________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:341:5
[INFO] [stdout]     |
[INFO] [stdout] 341 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => r.foo.bar());
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:341:5
[INFO] [stdout]     |
[INFO] [stdout] 341 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => r.foo.bar());
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:342:5
[INFO] [stdout]     |
[INFO] [stdout] 342 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => r.foo.bar());
[INFO] [stdout]     |     ---------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:342:5
[INFO] [stdout]     |
[INFO] [stdout] 342 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => r.foo.bar());
[INFO] [stdout]     |     ---------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |           $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:344:5
[INFO] [stdout]     |
[INFO] [stdout] 344 | /     warn!(log, "logging message bar={}", r.foo.bar();
[INFO] [stdout] 345 | |           "x" => r.foo.bar(), "y" => r.foo.bar());
[INFO] [stdout]     | |_________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                  |                    |
[INFO] [stdout]     |                                  |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                  borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:344:5
[INFO] [stdout]     |
[INFO] [stdout] 344 | /     warn!(log, "logging message bar={}", r.foo.bar();
[INFO] [stdout] 345 | |           "x" => r.foo.bar(), "y" => r.foo.bar());
[INFO] [stdout]     | |_________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |           $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:346:5
[INFO] [stdout]     |
[INFO] [stdout] 346 | /     crate::warn!(log,
[INFO] [stdout] 347 | |                "logging message bar={}", r.foo.bar();
[INFO] [stdout] 348 | |                "x" => r.foo.bar(), "y" => r.foo.bar());
[INFO] [stdout]     | |______________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                  |                    |
[INFO] [stdout]     |                                  |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                  borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:346:5
[INFO] [stdout]     |
[INFO] [stdout] 346 | /     crate::warn!(log,
[INFO] [stdout] 347 | |                "logging message bar={}", r.foo.bar();
[INFO] [stdout] 348 | |                "x" => r.foo.bar(), "y" => r.foo.bar());
[INFO] [stdout]     | |______________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |           $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:351:5
[INFO] [stdout]     |
[INFO] [stdout] 351 | /     warn!(log,
[INFO] [stdout] 352 | |           "logging message bar={}", r.foo.bar();
[INFO] [stdout] 353 | |           "x" => r.foo.bar(), "y" => r.foo.bar(),);
[INFO] [stdout]     | |__________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                  |                    |
[INFO] [stdout]     |                                  |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                  borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:351:5
[INFO] [stdout]     |
[INFO] [stdout] 351 | /     warn!(log,
[INFO] [stdout] 352 | |           "logging message bar={}", r.foo.bar();
[INFO] [stdout] 353 | |           "x" => r.foo.bar(), "y" => r.foo.bar(),);
[INFO] [stdout]     | |__________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |           $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:354:5
[INFO] [stdout]     |
[INFO] [stdout] 354 | /     crate::warn!(log,
[INFO] [stdout] 355 | |                "logging message bar={}", r.foo.bar();
[INFO] [stdout] 356 | |                "x" => r.foo.bar(), "y" => r.foo.bar(),);
[INFO] [stdout]     | |_______________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                  |                    |
[INFO] [stdout]     |                                  |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                  borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:354:5
[INFO] [stdout]     |
[INFO] [stdout] 354 | /     crate::warn!(log,
[INFO] [stdout] 355 | |                "logging message bar={}", r.foo.bar();
[INFO] [stdout] 356 | |                "x" => r.foo.bar(), "y" => r.foo.bar(),);
[INFO] [stdout]     | |_______________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:381:9
[INFO] [stdout]     |
[INFO] [stdout] 381 |         info!(log, "message"; "foo" => "bar", &x, &x, "aaa" => "bbb");
[INFO] [stdout]     |         ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:381:9
[INFO] [stdout]     |
[INFO] [stdout] 381 |         info!(log, "message"; "foo" => "bar", &x, &x, "aaa" => "bbb");
[INFO] [stdout]     |         ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |           $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:386:9
[INFO] [stdout]     |
[INFO] [stdout] 386 | /         info!(
[INFO] [stdout] 387 | |             log,
[INFO] [stdout] 388 | |             "message {}",
[INFO] [stdout] 389 | |             { 3 + 3; 2};
[INFO] [stdout] ...   |
[INFO] [stdout] 392 | |             "aaa" => "bbb"
[INFO] [stdout] 393 | |         );
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                  |                    |
[INFO] [stdout]     |                                  |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                  borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:386:9
[INFO] [stdout]     |
[INFO] [stdout] 386 | /         info!(
[INFO] [stdout] 387 | |             log,
[INFO] [stdout] 388 | |             "message {}",
[INFO] [stdout] 389 | |             { 3 + 3; 2};
[INFO] [stdout] ...   |
[INFO] [stdout] 392 | |             "aaa" => "bbb"
[INFO] [stdout] 393 | |         );
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:401:5
[INFO] [stdout]     |
[INFO] [stdout] 401 |     info!(log, "i128 = {}", 42i128; "foo" => 7i128);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:401:5
[INFO] [stdout]     |
[INFO] [stdout] 401 |     info!(log, "i128 = {}", 42i128; "foo" => 7i128);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:402:5
[INFO] [stdout]     |
[INFO] [stdout] 402 |     info!(log, "u128 = {}", 42u128; "foo" => 7u128);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:402:5
[INFO] [stdout]     |
[INFO] [stdout] 402 |     info!(log, "u128 = {}", 42u128; "foo" => 7u128);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:412:5
[INFO] [stdout]     |
[INFO] [stdout] 412 |     info!(log, "message"; "f" => %f, "d" => ?d);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:412:5
[INFO] [stdout]     |
[INFO] [stdout] 412 |     info!(log, "message"; "f" => %f, "d" => ?d);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:472:5
[INFO] [stdout]     |
[INFO] [stdout] 472 |     info!(log, ""; "n" => %Example, "a" => #%Example);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:472:5
[INFO] [stdout]     |
[INFO] [stdout] 472 |     info!(log, ""; "n" => %Example, "a" => #%Example);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         $crate::BorrowedKV(&kv!($($args)*))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:526:5
[INFO] [stdout]     |
[INFO] [stdout] 526 |     info!(&log, "message"; "f" => %f, "d" => ?d);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `b` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/lib.rs:662:53
[INFO] [stdout]     |
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                ---------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------
[INFO] [stdout]     |                                |                    |
[INFO] [stdout]     |                                |                    this temporary value will be dropped at the end of the block
[INFO] [stdout]     |                                borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:526:5
[INFO] [stdout]     |
[INFO] [stdout] 526 |     info!(&log, "message"; "f" => %f, "d" => ?d);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `log` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating examples/named.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/prelude_conflicts.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/struct-log-self.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/issue364.rs from 2021 edition to 2024
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.70s
[INFO] [stderr] crater-edition-check: slog v2.8.2 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr]    Compiling slog v2.8.2 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> tests/issue364.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     slog::info!(log, "oops"; "err" => #err);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `kv` which comes from the expansion of the macro `slog::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> tests/issue364.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     slog::info!(log, "oops"; "err" => #err);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `format_args` which comes from the expansion of the macro `slog::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0716`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `slog` (test "issue364") due to 2 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/named.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     info!(log, "foo is {foo}", foo = 2; "a" => "b");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/named.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     info!(log, "foo is {foo} {bar}", bar=3, foo = 2; "a" => "b");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/named.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     info!(log, "foo is {foo} {bar} {baz}", bar=3, foo = 2, baz=4; "a" => "b");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/named.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     info!(log, "formatted {num_entries} entries of {}", "something", num_entries = 2; "log-key" => true);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/struct-log-self.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 |         info!(self.log, "new connection"; peer);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         creates a temporary value which is freed while still in use
[INFO] [stdout]    |         temporary value is freed at the end of this statement
[INFO] [stdout]    |         borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/struct-log-self.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 |         info!(self.log, "new connection"; peer);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         creates a temporary value which is freed while still in use
[INFO] [stdout]    |         temporary value is freed at the end of this statement
[INFO] [stdout]    |         borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/named.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     info!(log, "{first} {third} {second}", first = 1, second = 2, third=3; "forth" => 4, "fifth" => 5);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/struct-log-self.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |         info!(self.log, "{}", msg; "current-count" => self.count, kv);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         creates a temporary value which is freed while still in use
[INFO] [stdout]    |         temporary value is freed at the end of this statement
[INFO] [stdout]    |         borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/named.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     info!(log, "foo is {foo} {bar} {baz}", bar = 3, foo = 2, baz = 4;);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/named.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     info!(log, "foo is {foo} {bar} {baz}", bar = 3, foo = 2, baz = 4);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/named.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     info!(log, "foo is {foo} {bar} {baz}", bar = 3, foo = 2, baz = 4,);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/struct-log-self.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |         info!(self.log, "{}", msg; "current-count" => self.count, kv);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         creates a temporary value which is freed while still in use
[INFO] [stdout]    |         temporary value is freed at the end of this statement
[INFO] [stdout]    |         borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/struct-log-self.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |         info!(self.log, "{}", msg; "current-count" => self.count, kv);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         creates a temporary value which is freed while still in use
[INFO] [stdout]    |         temporary value is freed at the end of this statement
[INFO] [stdout]    |         borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0716`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `slog` (example "struct-log-self") due to 5 previous errors
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/named.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     info!(log, "foo is {foo}", foo = 2; "a" => "b");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/named.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     info!(log, "foo is {foo} {bar}", bar=3, foo = 2; "a" => "b");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/named.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     info!(log, "foo is {foo} {bar} {baz}", bar=3, foo = 2, baz=4; "a" => "b");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/named.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     info!(log, "foo is {foo} {bar} {baz}", bar = 3, foo = 2, baz = 4;);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/named.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     info!(log, "foo is {foo} {bar} {baz}", bar = 3, foo = 2, baz = 4);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/named.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     info!(log, "foo is {foo} {bar} {baz}", bar = 3, foo = 2, baz = 4,);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/named.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     info!(log, "formatted {num_entries} entries of {}", "something", num_entries = 2; "log-key" => true);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> examples/named.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     info!(log, "{first} {third} {second}", first = 1, second = 2, third=3; "forth" => 4, "fifth" => 5);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     creates a temporary value which is freed while still in use
[INFO] [stdout]    |     temporary value is freed at the end of this statement
[INFO] [stdout]    |     borrow later used here
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]    = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0716`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `slog` (example "named") due to 16 previous errors
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:127:9
[INFO] [stdout]     |
[INFO] [stdout] 127 |         info!(log, "(b2, b1, a)");
[INFO] [stdout]     |         ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:130:9
[INFO] [stdout]     |
[INFO] [stdout] 130 |         info!(log, "(c, b2, b1, a)");
[INFO] [stdout]     |         ---------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:132:9
[INFO] [stdout]     |
[INFO] [stdout] 132 |         info!(log, "(d2, d1, c, b2, b1, a)");
[INFO] [stdout]     |         ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:411:15
[INFO] [stdout]     |
[INFO] [stdout] 411 |         kv!(@ ($crate::SingleKV::from(($k, $crate::__builtin!(@wrap_error $v) )), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         info!(logger, "foo"; "error" => #error);
[INFO] [stdout]     |         --------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         info!(logger, "foo"; "error" => #error);
[INFO] [stdout]     |         --------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:411:15
[INFO] [stdout]     |
[INFO] [stdout] 411 |         kv!(@ ($crate::SingleKV::from(($k, $crate::__builtin!(@wrap_error $v) )), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:148:9
[INFO] [stdout]     |
[INFO] [stdout] 148 |         info!(logger, "foo"; "error" => #&error);
[INFO] [stdout]     |         ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:148:9
[INFO] [stdout]     |
[INFO] [stdout] 148 |         info!(logger, "foo"; "error" => #&error);
[INFO] [stdout]     |         ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:411:15
[INFO] [stdout]     |
[INFO] [stdout] 411 |         kv!(@ ($crate::SingleKV::from(($k, $crate::__builtin!(@wrap_error $v) )), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |         info!(logger, "foo"; "error" => #&error);
[INFO] [stdout]     |         ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |         info!(logger, "foo"; "error" => #&error);
[INFO] [stdout]     |         ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:163:9
[INFO] [stdout]     |
[INFO] [stdout] 163 |         info!(logger, "foo");
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:164:9
[INFO] [stdout]     |
[INFO] [stdout] 164 |         crate::info!(logger, "foo");
[INFO] [stdout]     |         --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:411:15
[INFO] [stdout]     |
[INFO] [stdout] 411 |         kv!(@ ($crate::SingleKV::from(($k, $crate::__builtin!(@wrap_error $v) )), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 172 |         info!(logger, "foo"; "error" => #error);
[INFO] [stdout]     |         --------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:411:15
[INFO] [stdout]     |
[INFO] [stdout] 411 |         kv!(@ ($crate::SingleKV::from(($k, $crate::__builtin!(@wrap_error $v) )), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 173 |         crate::info!(logger, "foo"; "error" => #error);
[INFO] [stdout]     |         ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 172 |         info!(logger, "foo"; "error" => #error);
[INFO] [stdout]     |         --------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 173 |         crate::info!(logger, "foo"; "error" => #error);
[INFO] [stdout]     |         ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:182:9
[INFO] [stdout]     |
[INFO] [stdout] 182 |         info!(logger, "not-error: not-error; foo");
[INFO] [stdout]     |         ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 183 |         crate::info!(logger, "not-error: not-error; foo");
[INFO] [stdout]     |         ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:417:15
[INFO] [stdout]     |
[INFO] [stdout] 417 |         kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 191 |         info!(logger, "not-error: not-error; foo"; "error" => #error, "not-error" => "not-error");
[INFO] [stdout]     |         ----------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:417:15
[INFO] [stdout]     |
[INFO] [stdout] 417 |         kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:192:9
[INFO] [stdout]     |
[INFO] [stdout] 192 |         crate::info!(logger, "not-error: not-error; foo"; "error" => #error, "not-error" => "not-error");
[INFO] [stdout]     |         ------------------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 191 |         info!(logger, "not-error: not-error; foo"; "error" => #error, "not-error" => "not-error");
[INFO] [stdout]     |         ----------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:192:9
[INFO] [stdout]     |
[INFO] [stdout] 192 |         crate::info!(logger, "not-error: not-error; foo"; "error" => #error, "not-error" => "not-error");
[INFO] [stdout]     |         ------------------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:201:9
[INFO] [stdout]     |
[INFO] [stdout] 201 |         info!(logger, "foonot-error: not-error; ");
[INFO] [stdout]     |         ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:202:9
[INFO] [stdout]     |
[INFO] [stdout] 202 |         crate::info!(logger, "foonot-error: not-error; ");
[INFO] [stdout]     |         ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:411:15
[INFO] [stdout]     |
[INFO] [stdout] 411 |         kv!(@ ($crate::SingleKV::from(($k, $crate::__builtin!(@wrap_error $v) )), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:210:9
[INFO] [stdout]     |
[INFO] [stdout] 210 |         info!(logger, "foonot-error: not-error; "; "not-error" => "not-error", "error" => #error);
[INFO] [stdout]     |         ----------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:411:15
[INFO] [stdout]     |
[INFO] [stdout] 411 |         kv!(@ ($crate::SingleKV::from(($k, $crate::__builtin!(@wrap_error $v) )), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 211 |         crate::info!(logger, "foonot-error: not-error; "; "not-error" => "not-error", "error" => #error);
[INFO] [stdout]     |         ------------------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:210:9
[INFO] [stdout]     |
[INFO] [stdout] 210 |         info!(logger, "foonot-error: not-error; "; "not-error" => "not-error", "error" => #error);
[INFO] [stdout]     |         ----------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 211 |         crate::info!(logger, "foonot-error: not-error; "; "not-error" => "not-error", "error" => #error);
[INFO] [stdout]     |         ------------------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 220 |         info!(logger, "foo: bar");
[INFO] [stdout]     |         ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:221:9
[INFO] [stdout]     |
[INFO] [stdout] 221 |         crate::info!(logger, "foo: bar");
[INFO] [stdout]     |         -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:411:15
[INFO] [stdout]     |
[INFO] [stdout] 411 |         kv!(@ ($crate::SingleKV::from(($k, $crate::__builtin!(@wrap_error $v) )), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:229:9
[INFO] [stdout]     |
[INFO] [stdout] 229 |         info!(logger, "foo: bar"; "error" => #error);
[INFO] [stdout]     |         -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:411:15
[INFO] [stdout]     |
[INFO] [stdout] 411 |         kv!(@ ($crate::SingleKV::from(($k, $crate::__builtin!(@wrap_error $v) )), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 |         crate::info!(logger, "foo: bar"; "error" => #error);
[INFO] [stdout]     |         --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:229:9
[INFO] [stdout]     |
[INFO] [stdout] 229 |         info!(logger, "foo: bar"; "error" => #error);
[INFO] [stdout]     |         -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 |         crate::info!(logger, "foo: bar"; "error" => #error);
[INFO] [stdout]     |         --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:239:9
[INFO] [stdout]     |
[INFO] [stdout] 239 |         info!(logger, "foo: bar: baz");
[INFO] [stdout]     |         ------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:240:9
[INFO] [stdout]     |
[INFO] [stdout] 240 |         crate::info!(logger, "foo: bar: baz");
[INFO] [stdout]     |         ------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:411:15
[INFO] [stdout]     |
[INFO] [stdout] 411 |         kv!(@ ($crate::SingleKV::from(($k, $crate::__builtin!(@wrap_error $v) )), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 |         info!(logger, "foo: bar: baz"; "error" => #error);
[INFO] [stdout]     |         ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:411:15
[INFO] [stdout]     |
[INFO] [stdout] 411 |         kv!(@ ($crate::SingleKV::from(($k, $crate::__builtin!(@wrap_error $v) )), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:252:9
[INFO] [stdout]     |
[INFO] [stdout] 252 |         crate::info!(logger, "foo: bar: baz"; "error" => #error);
[INFO] [stdout]     |         -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 |         info!(logger, "foo: bar: baz"; "error" => #error);
[INFO] [stdout]     |         ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:252:9
[INFO] [stdout]     |
[INFO] [stdout] 252 |         crate::info!(logger, "foo: bar: baz"; "error" => #error);
[INFO] [stdout]     |         -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:411:15
[INFO] [stdout]     |
[INFO] [stdout] 411 |         kv!(@ ($crate::SingleKV::from(($k, $crate::__builtin!(@wrap_error $v) )), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:260:9
[INFO] [stdout]     |
[INFO] [stdout] 260 |         info!(logger, "not found"; "error" => #std::io::Error::from(std::io::ErrorKind::NotFound));
[INFO] [stdout]     |         ------------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:411:15
[INFO] [stdout]     |
[INFO] [stdout] 411 |         kv!(@ ($crate::SingleKV::from(($k, $crate::__builtin!(@wrap_error $v) )), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:262:9
[INFO] [stdout]     |
[INFO] [stdout] 262 |         info!(logger, "not found"; "error" => #&error);
[INFO] [stdout]     |         ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:417:15
[INFO] [stdout]     |
[INFO] [stdout] 417 |         kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:258:9
[INFO] [stdout]     |
[INFO] [stdout] 258 |         info!(logger, "not found"; "error" => std::io::Error::from(std::io::ErrorKind::NotFound));
[INFO] [stdout]     |         ----------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:258:9
[INFO] [stdout]     |
[INFO] [stdout] 258 |         info!(logger, "not found"; "error" => std::io::Error::from(std::io::ErrorKind::NotFound));
[INFO] [stdout]     |         ----------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:260:9
[INFO] [stdout]     |
[INFO] [stdout] 260 |         info!(logger, "not found"; "error" => #std::io::Error::from(std::io::ErrorKind::NotFound));
[INFO] [stdout]     |         ------------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:262:9
[INFO] [stdout]     |
[INFO] [stdout] 262 |         info!(logger, "not found"; "error" => #&error);
[INFO] [stdout]     |         ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:417:15
[INFO] [stdout]     |
[INFO] [stdout] 417 |         kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:295:5
[INFO] [stdout]     |
[INFO] [stdout] 295 |     warn!(log, "logging message"; "a" => "b");
[INFO] [stdout]     |     ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:417:15
[INFO] [stdout]     |
[INFO] [stdout] 417 |         kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:296:5
[INFO] [stdout]     |
[INFO] [stdout] 296 |     crate::warn!(log, "logging message"; "a" => "b");
[INFO] [stdout]     |     ------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:417:15
[INFO] [stdout]     |
[INFO] [stdout] 417 |         kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:328:5
[INFO] [stdout]     |
[INFO] [stdout] 328 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1);
[INFO] [stdout]     |     ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:417:15
[INFO] [stdout]     |
[INFO] [stdout] 417 |         kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:329:5
[INFO] [stdout]     |
[INFO] [stdout] 329 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1);
[INFO] [stdout]     |     ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:417:15
[INFO] [stdout]     |
[INFO] [stdout] 417 |           kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); )
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:335:5
[INFO] [stdout]     |
[INFO] [stdout] 335 | /     warn!(log,
[INFO] [stdout] 336 | |           "logging message bar={}", r.foo.bar(); "x" => 1, "y" => r.foo.bar());
[INFO] [stdout]     | |______________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:417:15
[INFO] [stdout]     |
[INFO] [stdout] 417 |           kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); )
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:337:5
[INFO] [stdout]     |
[INFO] [stdout] 337 | /     crate::warn!(log,
[INFO] [stdout] 338 | |                "logging message bar={}", r.foo.bar();
[INFO] [stdout] 339 | |                "x" => 1, "y" => r.foo.bar());
[INFO] [stdout]     | |____________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:417:15
[INFO] [stdout]     |
[INFO] [stdout] 417 |         kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:341:5
[INFO] [stdout]     |
[INFO] [stdout] 341 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => r.foo.bar());
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:417:15
[INFO] [stdout]     |
[INFO] [stdout] 417 |         kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:342:5
[INFO] [stdout]     |
[INFO] [stdout] 342 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => r.foo.bar());
[INFO] [stdout]     |     ---------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:417:15
[INFO] [stdout]     |
[INFO] [stdout] 417 |           kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); )
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:344:5
[INFO] [stdout]     |
[INFO] [stdout] 344 | /     warn!(log, "logging message bar={}", r.foo.bar();
[INFO] [stdout] 345 | |           "x" => r.foo.bar(), "y" => r.foo.bar());
[INFO] [stdout]     | |_________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:417:15
[INFO] [stdout]     |
[INFO] [stdout] 417 |           kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); )
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:346:5
[INFO] [stdout]     |
[INFO] [stdout] 346 | /     crate::warn!(log,
[INFO] [stdout] 347 | |                "logging message bar={}", r.foo.bar();
[INFO] [stdout] 348 | |                "x" => r.foo.bar(), "y" => r.foo.bar());
[INFO] [stdout]     | |______________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:417:15
[INFO] [stdout]     |
[INFO] [stdout] 417 |         kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:381:9
[INFO] [stdout]     |
[INFO] [stdout] 381 |         info!(log, "message"; "foo" => "bar", &x, &x, "aaa" => "bbb");
[INFO] [stdout]     |         ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:417:15
[INFO] [stdout]     |
[INFO] [stdout] 417 |           kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); )
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:386:9
[INFO] [stdout]     |
[INFO] [stdout] 386 | /         info!(
[INFO] [stdout] 387 | |             log,
[INFO] [stdout] 388 | |             "message {}",
[INFO] [stdout] 389 | |             { 3 + 3; 2};
[INFO] [stdout] ...   |
[INFO] [stdout] 392 | |             "aaa" => "bbb"
[INFO] [stdout] 393 | |         );
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:420:15
[INFO] [stdout]     |
[INFO] [stdout] 420 |         kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); $($args)* )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:332:5
[INFO] [stdout]     |
[INFO] [stdout] 332 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1,);
[INFO] [stdout]     |     ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:420:15
[INFO] [stdout]     |
[INFO] [stdout] 420 |         kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); $($args)* )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:333:5
[INFO] [stdout]     |
[INFO] [stdout] 333 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1,);
[INFO] [stdout]     |     ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:420:15
[INFO] [stdout]     |
[INFO] [stdout] 420 |           kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); $($args)* )
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:351:5
[INFO] [stdout]     |
[INFO] [stdout] 351 | /     warn!(log,
[INFO] [stdout] 352 | |           "logging message bar={}", r.foo.bar();
[INFO] [stdout] 353 | |           "x" => r.foo.bar(), "y" => r.foo.bar(),);
[INFO] [stdout]     | |__________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:420:15
[INFO] [stdout]     |
[INFO] [stdout] 420 |           kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); $($args)* )
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:354:5
[INFO] [stdout]     |
[INFO] [stdout] 354 | /     crate::warn!(log,
[INFO] [stdout] 355 | |                "logging message bar={}", r.foo.bar();
[INFO] [stdout] 356 | |                "x" => r.foo.bar(), "y" => r.foo.bar(),);
[INFO] [stdout]     | |_______________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:289:5
[INFO] [stdout]     |
[INFO] [stdout] 289 |     warn!(log, "logging message");
[INFO] [stdout]     |     ----------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:290:5
[INFO] [stdout]     |
[INFO] [stdout] 290 |     crate::warn!(log, "logging message");
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:292:5
[INFO] [stdout]     |
[INFO] [stdout] 292 |     info!(log, # "with tag", "logging message");
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:293:5
[INFO] [stdout]     |
[INFO] [stdout] 293 |     crate::info!(log, # "with tag", "logging message");
[INFO] [stdout]     |     -------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:295:5
[INFO] [stdout]     |
[INFO] [stdout] 295 |     warn!(log, "logging message"; "a" => "b");
[INFO] [stdout]     |     ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:296:5
[INFO] [stdout]     |
[INFO] [stdout] 296 |     crate::warn!(log, "logging message"; "a" => "b");
[INFO] [stdout]     |     ------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:298:5
[INFO] [stdout]     |
[INFO] [stdout] 298 |     warn!(log, "logging message bar={}", r.foo.bar());
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:298:5
[INFO] [stdout]     |
[INFO] [stdout] 298 |     warn!(log, "logging message bar={}", r.foo.bar());
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:299:5
[INFO] [stdout]     |
[INFO] [stdout] 299 |     crate::warn!(log, "logging message bar={}", r.foo.bar());
[INFO] [stdout]     |     -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:299:5
[INFO] [stdout]     |
[INFO] [stdout] 299 |     crate::warn!(log, "logging message bar={}", r.foo.bar());
[INFO] [stdout]     |     -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:301:5
[INFO] [stdout]     |
[INFO] [stdout] 301 | /     warn!(
[INFO] [stdout] 302 | |         log,
[INFO] [stdout] 303 | |         "logging message bar={} foo={}",
[INFO] [stdout] 304 | |         r.foo.bar(),
[INFO] [stdout] 305 | |         r.foo.bar()
[INFO] [stdout] 306 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:301:5
[INFO] [stdout]     |
[INFO] [stdout] 301 | /     warn!(
[INFO] [stdout] 302 | |         log,
[INFO] [stdout] 303 | |         "logging message bar={} foo={}",
[INFO] [stdout] 304 | |         r.foo.bar(),
[INFO] [stdout] 305 | |         r.foo.bar()
[INFO] [stdout] 306 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:307:5
[INFO] [stdout]     |
[INFO] [stdout] 307 | /     crate::warn!(
[INFO] [stdout] 308 | |         log,
[INFO] [stdout] 309 | |         "logging message bar={} foo={}",
[INFO] [stdout] 310 | |         r.foo.bar(),
[INFO] [stdout] 311 | |         r.foo.bar()
[INFO] [stdout] 312 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:307:5
[INFO] [stdout]     |
[INFO] [stdout] 307 | /     crate::warn!(
[INFO] [stdout] 308 | |         log,
[INFO] [stdout] 309 | |         "logging message bar={} foo={}",
[INFO] [stdout] 310 | |         r.foo.bar(),
[INFO] [stdout] 311 | |         r.foo.bar()
[INFO] [stdout] 312 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:315:5
[INFO] [stdout]     |
[INFO] [stdout] 315 | /     warn!(
[INFO] [stdout] 316 | |         log,
[INFO] [stdout] 317 | |         "logging message bar={} foo={}",
[INFO] [stdout] 318 | |         r.foo.bar(),
[INFO] [stdout] 319 | |         r.foo.bar(),
[INFO] [stdout] 320 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:315:5
[INFO] [stdout]     |
[INFO] [stdout] 315 | /     warn!(
[INFO] [stdout] 316 | |         log,
[INFO] [stdout] 317 | |         "logging message bar={} foo={}",
[INFO] [stdout] 318 | |         r.foo.bar(),
[INFO] [stdout] 319 | |         r.foo.bar(),
[INFO] [stdout] 320 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:321:5
[INFO] [stdout]     |
[INFO] [stdout] 321 | /     crate::warn!(
[INFO] [stdout] 322 | |         log,
[INFO] [stdout] 323 | |         "logging message bar={} foo={}",
[INFO] [stdout] 324 | |         r.foo.bar(),
[INFO] [stdout] 325 | |         r.foo.bar(),
[INFO] [stdout] 326 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:321:5
[INFO] [stdout]     |
[INFO] [stdout] 321 | /     crate::warn!(
[INFO] [stdout] 322 | |         log,
[INFO] [stdout] 323 | |         "logging message bar={} foo={}",
[INFO] [stdout] 324 | |         r.foo.bar(),
[INFO] [stdout] 325 | |         r.foo.bar(),
[INFO] [stdout] 326 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:328:5
[INFO] [stdout]     |
[INFO] [stdout] 328 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1);
[INFO] [stdout]     |     ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:328:5
[INFO] [stdout]     |
[INFO] [stdout] 328 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1);
[INFO] [stdout]     |     ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:329:5
[INFO] [stdout]     |
[INFO] [stdout] 329 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1);
[INFO] [stdout]     |     ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:329:5
[INFO] [stdout]     |
[INFO] [stdout] 329 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1);
[INFO] [stdout]     |     ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:332:5
[INFO] [stdout]     |
[INFO] [stdout] 332 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1,);
[INFO] [stdout]     |     ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:332:5
[INFO] [stdout]     |
[INFO] [stdout] 332 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1,);
[INFO] [stdout]     |     ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:333:5
[INFO] [stdout]     |
[INFO] [stdout] 333 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1,);
[INFO] [stdout]     |     ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:333:5
[INFO] [stdout]     |
[INFO] [stdout] 333 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1,);
[INFO] [stdout]     |     ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:335:5
[INFO] [stdout]     |
[INFO] [stdout] 335 | /     warn!(log,
[INFO] [stdout] 336 | |           "logging message bar={}", r.foo.bar(); "x" => 1, "y" => r.foo.bar());
[INFO] [stdout]     | |______________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:335:5
[INFO] [stdout]     |
[INFO] [stdout] 335 | /     warn!(log,
[INFO] [stdout] 336 | |           "logging message bar={}", r.foo.bar(); "x" => 1, "y" => r.foo.bar());
[INFO] [stdout]     | |______________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:337:5
[INFO] [stdout]     |
[INFO] [stdout] 337 | /     crate::warn!(log,
[INFO] [stdout] 338 | |                "logging message bar={}", r.foo.bar();
[INFO] [stdout] 339 | |                "x" => 1, "y" => r.foo.bar());
[INFO] [stdout]     | |____________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:337:5
[INFO] [stdout]     |
[INFO] [stdout] 337 | /     crate::warn!(log,
[INFO] [stdout] 338 | |                "logging message bar={}", r.foo.bar();
[INFO] [stdout] 339 | |                "x" => 1, "y" => r.foo.bar());
[INFO] [stdout]     | |____________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:341:5
[INFO] [stdout]     |
[INFO] [stdout] 341 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => r.foo.bar());
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:341:5
[INFO] [stdout]     |
[INFO] [stdout] 341 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => r.foo.bar());
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:342:5
[INFO] [stdout]     |
[INFO] [stdout] 342 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => r.foo.bar());
[INFO] [stdout]     |     ---------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:342:5
[INFO] [stdout]     |
[INFO] [stdout] 342 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => r.foo.bar());
[INFO] [stdout]     |     ---------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:344:5
[INFO] [stdout]     |
[INFO] [stdout] 344 | /     warn!(log, "logging message bar={}", r.foo.bar();
[INFO] [stdout] 345 | |           "x" => r.foo.bar(), "y" => r.foo.bar());
[INFO] [stdout]     | |_________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:344:5
[INFO] [stdout]     |
[INFO] [stdout] 344 | /     warn!(log, "logging message bar={}", r.foo.bar();
[INFO] [stdout] 345 | |           "x" => r.foo.bar(), "y" => r.foo.bar());
[INFO] [stdout]     | |_________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:346:5
[INFO] [stdout]     |
[INFO] [stdout] 346 | /     crate::warn!(log,
[INFO] [stdout] 347 | |                "logging message bar={}", r.foo.bar();
[INFO] [stdout] 348 | |                "x" => r.foo.bar(), "y" => r.foo.bar());
[INFO] [stdout]     | |______________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:346:5
[INFO] [stdout]     |
[INFO] [stdout] 346 | /     crate::warn!(log,
[INFO] [stdout] 347 | |                "logging message bar={}", r.foo.bar();
[INFO] [stdout] 348 | |                "x" => r.foo.bar(), "y" => r.foo.bar());
[INFO] [stdout]     | |______________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:351:5
[INFO] [stdout]     |
[INFO] [stdout] 351 | /     warn!(log,
[INFO] [stdout] 352 | |           "logging message bar={}", r.foo.bar();
[INFO] [stdout] 353 | |           "x" => r.foo.bar(), "y" => r.foo.bar(),);
[INFO] [stdout]     | |__________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:351:5
[INFO] [stdout]     |
[INFO] [stdout] 351 | /     warn!(log,
[INFO] [stdout] 352 | |           "logging message bar={}", r.foo.bar();
[INFO] [stdout] 353 | |           "x" => r.foo.bar(), "y" => r.foo.bar(),);
[INFO] [stdout]     | |__________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:354:5
[INFO] [stdout]     |
[INFO] [stdout] 354 | /     crate::warn!(log,
[INFO] [stdout] 355 | |                "logging message bar={}", r.foo.bar();
[INFO] [stdout] 356 | |                "x" => r.foo.bar(), "y" => r.foo.bar(),);
[INFO] [stdout]     | |_______________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:354:5
[INFO] [stdout]     |
[INFO] [stdout] 354 | /     crate::warn!(log,
[INFO] [stdout] 355 | |                "logging message bar={}", r.foo.bar();
[INFO] [stdout] 356 | |                "x" => r.foo.bar(), "y" => r.foo.bar(),);
[INFO] [stdout]     | |_______________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `crate::warn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:381:9
[INFO] [stdout]     |
[INFO] [stdout] 381 |         info!(log, "message"; "foo" => "bar", &x, &x, "aaa" => "bbb");
[INFO] [stdout]     |         ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:386:9
[INFO] [stdout]     |
[INFO] [stdout] 386 | /         info!(
[INFO] [stdout] 387 | |             log,
[INFO] [stdout] 388 | |             "message {}",
[INFO] [stdout] 389 | |             { 3 + 3; 2};
[INFO] [stdout] ...   |
[INFO] [stdout] 392 | |             "aaa" => "bbb"
[INFO] [stdout] 393 | |         );
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |           $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                             - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |         $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                  --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |       (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:386:9
[INFO] [stdout]     |
[INFO] [stdout] 386 | /         info!(
[INFO] [stdout] 387 | |             log,
[INFO] [stdout] 388 | |             "message {}",
[INFO] [stdout] 389 | |             { 3 + 3; 2};
[INFO] [stdout] ...   |
[INFO] [stdout] 392 | |             "aaa" => "bbb"
[INFO] [stdout] 393 | |         );
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:298:42
[INFO] [stdout]     |
[INFO] [stdout] 298 |     warn!(log, "logging message bar={}", r.foo.bar());
[INFO] [stdout]     |                                          ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:299:49
[INFO] [stdout]     |
[INFO] [stdout] 299 |     crate::warn!(log, "logging message bar={}", r.foo.bar());
[INFO] [stdout]     |                                                 ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:304:9
[INFO] [stdout]     |
[INFO] [stdout] 304 |         r.foo.bar(),
[INFO] [stdout]     |         ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:305:9
[INFO] [stdout]     |
[INFO] [stdout] 305 |         r.foo.bar()
[INFO] [stdout]     |         ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:310:9
[INFO] [stdout]     |
[INFO] [stdout] 310 |         r.foo.bar(),
[INFO] [stdout]     |         ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:311:9
[INFO] [stdout]     |
[INFO] [stdout] 311 |         r.foo.bar()
[INFO] [stdout]     |         ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:318:9
[INFO] [stdout]     |
[INFO] [stdout] 318 |         r.foo.bar(),
[INFO] [stdout]     |         ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:319:9
[INFO] [stdout]     |
[INFO] [stdout] 319 |         r.foo.bar(),
[INFO] [stdout]     |         ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:324:9
[INFO] [stdout]     |
[INFO] [stdout] 324 |         r.foo.bar(),
[INFO] [stdout]     |         ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:325:9
[INFO] [stdout]     |
[INFO] [stdout] 325 |         r.foo.bar(),
[INFO] [stdout]     |         ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:328:42
[INFO] [stdout]     |
[INFO] [stdout] 328 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1);
[INFO] [stdout]     |                                          ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:329:49
[INFO] [stdout]     |
[INFO] [stdout] 329 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1);
[INFO] [stdout]     |                                                 ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:332:42
[INFO] [stdout]     |
[INFO] [stdout] 332 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1,);
[INFO] [stdout]     |                                          ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:333:49
[INFO] [stdout]     |
[INFO] [stdout] 333 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => 1,);
[INFO] [stdout]     |                                                 ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:336:37
[INFO] [stdout]     |
[INFO] [stdout] 336 |           "logging message bar={}", r.foo.bar(); "x" => 1, "y" => r.foo.bar());
[INFO] [stdout]     |                                     ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:338:42
[INFO] [stdout]     |
[INFO] [stdout] 338 |                "logging message bar={}", r.foo.bar();
[INFO] [stdout]     |                                          ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:341:42
[INFO] [stdout]     |
[INFO] [stdout] 341 |     warn!(log, "logging message bar={}", r.foo.bar(); "x" => r.foo.bar());
[INFO] [stdout]     |                                          ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:342:49
[INFO] [stdout]     |
[INFO] [stdout] 342 |     crate::warn!(log, "logging message bar={}", r.foo.bar(); "x" => r.foo.bar());
[INFO] [stdout]     |                                                 ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:344:42
[INFO] [stdout]     |
[INFO] [stdout] 344 |     warn!(log, "logging message bar={}", r.foo.bar();
[INFO] [stdout]     |                                          ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:347:42
[INFO] [stdout]     |
[INFO] [stdout] 347 |                "logging message bar={}", r.foo.bar();
[INFO] [stdout]     |                                          ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:352:37
[INFO] [stdout]     |
[INFO] [stdout] 352 |           "logging message bar={}", r.foo.bar();
[INFO] [stdout]     |                                     ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/tests.rs:355:42
[INFO] [stdout]     |
[INFO] [stdout] 355 |                "logging message bar={}", r.foo.bar();
[INFO] [stdout]     |                                          ^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:493:43
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:417:15
[INFO] [stdout]     |
[INFO] [stdout] 417 |         kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:401:5
[INFO] [stdout]     |
[INFO] [stdout] 401 |     info!(log, "i128 = {}", 42i128; "foo" => 7i128);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:417:15
[INFO] [stdout]     |
[INFO] [stdout] 417 |         kv!(@ ($crate::SingleKV::from(($k, $v)), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:402:5
[INFO] [stdout]     |
[INFO] [stdout] 402 |     info!(log, "u128 = {}", 42u128; "foo" => 7u128);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:401:5
[INFO] [stdout]     |
[INFO] [stdout] 401 |     info!(log, "i128 = {}", 42i128; "foo" => 7i128);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:402:5
[INFO] [stdout]     |
[INFO] [stdout] 402 |     info!(log, "u128 = {}", 42u128; "foo" => 7u128);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:399:15
[INFO] [stdout]     |
[INFO] [stdout] 399 |         kv!(@ ($crate::SingleKV::from(($k, $crate::__builtin!(@format_args "{:?}", $v))), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:412:5
[INFO] [stdout]     |
[INFO] [stdout] 412 |     info!(log, "message"; "f" => %f, "d" => ?d);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:412:5
[INFO] [stdout]     |
[INFO] [stdout] 412 |     info!(log, "message"; "f" => %f, "d" => ?d);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:412:5
[INFO] [stdout]     |
[INFO] [stdout] 412 |     info!(log, "message"; "f" => %f, "d" => ?d);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:412:5
[INFO] [stdout]     |
[INFO] [stdout] 412 |     info!(log, "message"; "f" => %f, "d" => ?d);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:393:15
[INFO] [stdout]     |
[INFO] [stdout] 393 |         kv!(@ ($crate::SingleKV::from(($k, $crate::__builtin!(@format_args "{:#}", $v))), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:472:5
[INFO] [stdout]     |
[INFO] [stdout] 472 |     info!(log, ""; "n" => %Example, "a" => #%Example);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:472:5
[INFO] [stdout]     |
[INFO] [stdout] 472 |     info!(log, ""; "n" => %Example, "a" => #%Example);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:472:5
[INFO] [stdout]     |
[INFO] [stdout] 472 |     info!(log, ""; "n" => %Example, "a" => #%Example);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:472:5
[INFO] [stdout]     |
[INFO] [stdout] 472 |     info!(log, ""; "n" => %Example, "a" => #%Example);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:399:15
[INFO] [stdout]     |
[INFO] [stdout] 399 |         kv!(@ ($crate::SingleKV::from(($k, $crate::__builtin!(@format_args "{:?}", $v))), $args_ready); )
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] ...
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:526:5
[INFO] [stdout]     |
[INFO] [stdout] 526 |     info!(&log, "message"; "f" => %f, "d" => ?d);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `kv` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:526:5
[INFO] [stdout]     |
[INFO] [stdout] 526 |     info!(&log, "message"; "f" => %f, "d" => ?d);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:526:5
[INFO] [stdout]     |
[INFO] [stdout] 526 |     info!(&log, "message"; "f" => %f, "d" => ?d);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `$crate::__builtin` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/lib.rs:907:35
[INFO] [stdout]     |
[INFO] [stdout] 493 |         $crate::Record::new(&RS, $args, $b)
[INFO] [stdout]     |                                           - temporary value is freed at the end of this statement
[INFO] [stdout] ...
[INFO] [stdout] 662 |       $crate::Logger::log(&$l, &record!($lvl, $tag, &$crate::__builtin!(@format_args $msg_fmt, $($fmt)*), b!($($kv)*)))
[INFO] [stdout]     |                                --------------------------------------------------------------------------------------- borrow later used here
[INFO] [stdout] ...
[INFO] [stdout] 907 |     (@format_args $($t:tt)*) => ( format_args!($($t)*) );
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/tests.rs:526:5
[INFO] [stdout]     |
[INFO] [stdout] 526 |     info!(&log, "message"; "f" => %f, "d" => ?d);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout]     = note: this error originates in the macro `format_args` which comes from the expansion of the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0716`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `slog` (lib test) due to 144 previous errors
[INFO] running `Command { std: "docker" "inspect" "5eae1e11f5b41f632236fc530204478f8be8b6cb295963154e2f7c9bd9b7f5fc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5eae1e11f5b41f632236fc530204478f8be8b6cb295963154e2f7c9bd9b7f5fc", kill_on_drop: false }`
[INFO] [stdout] 5eae1e11f5b41f632236fc530204478f8be8b6cb295963154e2f7c9bd9b7f5fc
